home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Demos / Evatac Software / Preditor 3.0 / Tools / Language Module Builder / Sources / AScriptParse.h < prev    next >
Text File  |  1995-10-16  |  3KB  |  129 lines

  1. /************************************************************
  2.  
  3.     Parse.h
  4.     C Source to Preditor 3
  5.  
  6.     © Copyright Evatac Software  1988-1995
  7.     All rights reserved
  8.  
  9. ************************************************************/
  10.  
  11. #ifndef __PARSERH__
  12. #define __PARSERH__
  13.  
  14. #include "LanguageModule.h"
  15.  
  16. /*
  17.  * * * * * * * * * CONSTANTS AND MACRO DEFINITIONS * * * * * * * * * *
  18.  */
  19.  
  20. /* 
  21.  * Here are the token type we return
  22.  */
  23.  
  24. enum {
  25.     kFunction        = 0,
  26.     kKeyword,
  27.     kComment,
  28.     kCustomKeyword
  29. };
  30.  
  31. enum {
  32.     kSymbolLeftParen        = '(',    /* ( */
  33.     kSymbolRightParen        = ')',    /* ) */
  34.     kSymbolLeftHard            = '[',    /* [ */
  35.     kSymbolRightHard        = ']',    /* ] */
  36.     kSymbolLeftBrace        = '{',    /* { */
  37.     kSymbolRightBrace        = '}',    /* } */
  38.     kSymbolBackSlash        = '\\',    /* \ */
  39.     kSymbolQuote             = '\'',    /* ' */
  40.     kSymbolDoubleQuote        = '\"',    /* " */
  41.     kSymbolPound            = '#',    /* # */
  42.     kSymbolSemiColon        = ';',    /* ; */
  43.     kSymbolCommon            = ',',    /* , */
  44.     kSymbolDot                = '.',    /* . */
  45.     kSymbolColon            = ':',    /* : */
  46.     kSymbolAssign            = '=',    /* = */
  47.     kSymbolNot                = '!',    /* ! */
  48.     kSymbolMod                = '%',    /* % */
  49.     kSymbolXOr                = '^',    /* ^ */
  50.     kSymbolAnd                = '&',    /* & */
  51.     kSymbolStar                = '*',    /* * */
  52.     kSymbolMinus            = '-',    /* - */
  53.     kSymbolPlus                = '+',    /* + */
  54.     kSymbolBar                = '|',    /* | */
  55.     kSymbolComplement        = '~',    /* ~ */
  56.     kSymbolLess                = '<',    /* < */
  57.     kSymbolGreater            = '>',    /* > */
  58.     kSymbolQuestion            = '?',    /* ? */
  59.     kSymbolDivide            = '/',    /* / */
  60.  
  61.     kSymbolFirstCompoundSymbol = 300,
  62.     kSymbolPointer = 300,            /* -> */
  63.     kSymbolDotStar,                    /* .*  */
  64.     kSymbolPointerStar,                /* ->* */
  65.     kSymbolPlusPlus,                /* ++  */
  66.     kSymbolMinusMinus,                /* --  */
  67.     kSymbolLeftShift,                /* <<  */
  68.     kSymbolRightShift,                /* >>  */
  69.     kSymbolLessOrEqual,                /* <=  */
  70.     kSymbolGreaterOrEqual,            /* >=  */
  71.     kSymbolEqual,                    /* ==  */
  72.     kSymbolNotEqual,                /* !=  */
  73.     kSymbolAndAnd,                    /* &&  */
  74.     kSymbolOrOr,                    /* ||  */
  75.     kSymbolMultiplyAssign,            /* *=  */
  76.     kSymbolDivideAssign,            /* /=  */
  77.     kSymbolModAssign,                /* %=  */
  78.     kSymbolPlusAssign,                /* +=  */
  79.     kSymbolMinusAssign,                /* -=  */
  80.     kSymbolLeftShiftAssign,            /* <<= */
  81.     kSymbolRightShiftAssign,        /* >>= */
  82.     kSymbolAndAssign,                /* &=  */
  83.     kSymbolXOrAssign,                /* ^=  */
  84.     kSymbolOrAssign,                /* |=  */
  85.     kSymbolScope,                    /* ::  */
  86.     kSymbolEllipsis,                /* ... */
  87.     kSymbolPoundPound,                /* ##  */
  88.  
  89.     kSymbolTrigraphPound,            /* ??= */
  90.     kSymbolTrigraphBackSlash,        /* ??/ */
  91.     kSymbolTrigraphXOr,                /* ??' */
  92.     kSymbolTrigraphLeftHard,        /* ??( */
  93.     kSymbolTrigraphRightHard,        /* ??) */
  94.     kSymbolTrigraphBar,                /* ??! */
  95.     kSymbolTrigraphUnknown,            /* ?? something */
  96.     kSymbolLastCompoundSymbol,
  97.  
  98.     kSymbolFirstSpecial = 400,
  99.     kSymbolIdentifier = 400,
  100.     kSymbolIntConstant,
  101.     kSymbolCharConstant,
  102.     kSymbolFloatConstant,
  103.     kSymbolStringLiteral,
  104.     kSymbolWhiteSpace,
  105.     kSymbolComment,
  106.     kSymbolPreprocessorDirective,
  107.     kSymbolInclude,
  108.     kSymbolLastSpecial,
  109.  
  110.     kSymbolReservedWord = 500,
  111.     kSymbolCustomWord
  112. };
  113.  
  114. /*
  115.  * * * * * * * * * TYPE AND STRUCTURE DEFINITIONS * * * * * * * * * *
  116.  */
  117.  
  118. /*
  119.  * * * * * * * * * FUNCTION PROTOTYPES * * * * * * * * * *
  120.  */
  121.  
  122. /*
  123.  * * * * * * * * * FUNCTIONS IMPLEMENTED AS MACROS * * * * * * * *
  124.  */
  125.  
  126.  
  127. #endif
  128.  
  129.